const UglifyJsPlugin = require('uglifyjs-webpack-plugin');

/**
 * 打包清除所有console打印
 * @param context
 * @param onGetWebpackConfig
 * @param onHook
 * @param resp
 */
module.exports = ({context, onGetWebpackConfig, onHook, ...resp}) => {

  //  -------resp解析--------
  //   'log',
  //   'registerTask',
  //   'getAllTask',
  //   'getAllPlugin',
  //   'onGetJestConfig',
  //   'setValue',
  //   'getValue',
  //   'registerUserConfig',
  //   'registerCliOption',
  //   'registerMethod',
  //   'applyMethod',
  //   'modifyUserConfig'

  onGetWebpackConfig(config => {
    if (context.command === 'build') {
      // 生成 soruce-map 进行调试
      config.devtool('source-map');
      config.plugin('UglifyJsPlugin')
        .use(UglifyJsPlugin, [{
          uglifyOptions: {
            compress: {
              // warnings: false,
              drop_debugger: true,  //去掉debugger
              drop_console: true,  // 去掉console
              pure_funcs: ['console.log']// 移除console
            }
          },
          sourceMap: true,
          parallel: true
        }])
    }
  });

}
